home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club (Business) 1997 July / Software of the Month Club - Business (Volume 239) (July 1997).iso / pc / code / shared.dxr / 04485_childnamelistUtils.ls < prev    next >
Encoding:
Text File  |  1996-02-21  |  2.7 KB  |  76 lines

  1. global gNoPreLoadFrames, gNoPreLoadRefNames, gWorld, gOBJECTS
  2.  
  3. on makeChildNameNoPreLoadList2 RefName
  4.   set thisOBJ to getaProp(gOBJECTS, RefName)
  5.   if not voidp(getaProp(thisOBJ, #Children)) then
  6.     set childNameList to getaProp(thisOBJ, #Children)
  7.     repeat with childName in childNameList
  8.       set childObj to getaProp(gOBJECTS, childName)
  9.       if not voidp(getaProp(childObj, #cast)) then
  10.         addUnique(gNoPreLoadRefNames, childName)
  11.       end if
  12.       if not voidp(getaProp(childObj, #Children)) then
  13.         makeChildNameNoPreLoadList(childName)
  14.       end if
  15.     end repeat
  16.   end if
  17. end
  18.  
  19. on makeChildNameNoPreLoadList RefName
  20.   set thisOBJ to getaProp(gOBJECTS, RefName)
  21.   if not voidp(getaProp(thisOBJ, #Children)) then
  22.     set childNameList to getaProp(thisOBJ, #Children)
  23.     repeat with childName in childNameList
  24.       set childObj to getaProp(gOBJECTS, childName)
  25.       if not voidp(getaProp(childObj, #cast)) then
  26.         addUnique(gNoPreLoadRefNames, childName)
  27.       end if
  28.       if not voidp(getaProp(childObj, #Children)) then
  29.         makeChildNameNoPreLoadList(childName)
  30.       end if
  31.       if not voidp(getaProp(childObj, #SpecialChild)) then
  32.         makeChildNameNoPreLoadList(childName)
  33.       end if
  34.     end repeat
  35.   end if
  36.   if not voidp(getaProp(thisOBJ, #SpecialChild)) then
  37.     set specialchildPropList to getaProp(thisOBJ, #SpecialChild)
  38.     repeat with i = 1 to count(specialchildPropList)
  39.       set thisCondition to getPropAt(specialchildPropList, i)
  40.       set specialChildRefNameList to getaProp(specialchildPropList, thisCondition)
  41.       if count(specialChildRefNameList) > 0 then
  42.         repeat with specialChildRefName in specialChildRefNameList
  43.           set specialChildObj to getaProp(gOBJECTS, specialChildRefName)
  44.           if not voidp(getaProp(specialChildObj, #cast)) then
  45.             addUnique(gNoPreLoadRefNames, specialChildRefName)
  46.           end if
  47.           if not voidp(getaProp(specialChildObj, #SpecialChild)) then
  48.             makeChildNameNoPreLoadList(specialChildRefName)
  49.           end if
  50.           if not voidp(getaProp(specialChildObj, #Children)) then
  51.             makeChildNameNoPreLoadList(specialChildRefName)
  52.           end if
  53.         end repeat
  54.       end if
  55.     end repeat
  56.   end if
  57. end
  58.  
  59. on setNoPreLoadRefNameList
  60.   set gNoPreLoadRefNames to []
  61.   repeat with frame in gNoPreLoadFrames
  62.     set refNameList to getaProp(getaProp(gWorld, frame), #objects)
  63.     if count(refNameList) > 0 then
  64.       repeat with RefName in refNameList
  65.         makeChildNameNoPreLoadList(RefName)
  66.       end repeat
  67.     end if
  68.   end repeat
  69.   put gNoPreLoadRefNames
  70. end
  71.  
  72. on initNoPreLoadFrameList
  73.   set gNoPreLoadFrames to []
  74.   set gNoPreLoadFrames to [#A09, #A13, #B16A, #B28A, #B31A, #C09, #C11, #D22, #D10, #E04, #F69, #G11C, #G11D, #G20, #H12]
  75. end
  76.